import java.util.*; 
import java.io.*;
import edu.vanderbilt.isis.sm.*; 
import edu.vanderbilt.isis.sm.Pseudostate.Kind; 
import edu.vanderbilt.isis.sm.properties.*; 
import com.martiansoftware.jsap.*;
public class TopLevelVPC { 
	public StateMachine sm = new StateMachine(); 
	public Interpreter sim; 
	public TopLevelVPC() { }
	public static void main(String[] args) throws Exception {
		TopLevelVPC example = new TopLevelVPC();
		FlaggedOption semantics = new FlaggedOption("semantics")
			.setStringParser(JSAP.STRING_PARSER)
	        .setDefault("SF")
	        .setRequired(false)
	        .setShortFlag('s')
	        .setLongFlag("semantics");
		FlaggedOption dataProviderArg = new FlaggedOption("dataProvider")
			.setStringParser(JSAP.STRING_PARSER)
	        .setDefault("CommandLine")
	        .setRequired(false)
	        .setShortFlag('d')
	        .setLongFlag("dataProvider");
		FlaggedOption maxSteps = new FlaggedOption("maxSteps")
			.setStringParser(JSAP.INTEGER_PARSER)
	        .setDefault("10")
	        .setRequired(false)
	        .setShortFlag(JSAP.NO_SHORTFLAG)
	        .setLongFlag("maxSteps");
		FlaggedOption csvFile = new FlaggedOption("csvFilePath")
			.setStringParser(JSAP.STRING_PARSER)
	        .setDefault("")
	        .setRequired(false)
	        .setShortFlag('c')
	        .setLongFlag("csvFile");
		Switch checkOutputSw = new Switch("checkOutput")
	        .setShortFlag(JSAP.NO_SHORTFLAG)
	        .setLongFlag("checkOutput");
		FlaggedOption looperArg = new FlaggedOption("looper")
			.setStringParser(JSAP.STRING_PARSER)
	        .setDefault("Default")
	        .setRequired(false)
	        .setShortFlag('l')
	        .setLongFlag("looper");
		Switch checkPropertiesSw = new Switch("checkProperties").setShortFlag(
				JSAP.NO_SHORTFLAG).setLongFlag("checkProperties");

		JSAP jsap = new JSAP();
		jsap.registerParameter(semantics);
		jsap.registerParameter(dataProviderArg);
		jsap.registerParameter(csvFile);
		jsap.registerParameter(checkOutputSw);
		jsap.registerParameter(maxSteps);
		jsap.registerParameter(looperArg);
		jsap.registerParameter(checkPropertiesSw);
		JSAPResult config = jsap.parse(args);

		IDataProvider dataProvider = new CommandLineDataProvider();
		IDataPrinter dataPrinter = null;
		ILooper looper = new DefaultLooper();
		List<Pattern> patterns = new ArrayList<Pattern>();

		if (config.getString("dataProvider").toUpperCase().equals("CSV")) {
			String fileName = config.getString("csvFilePath");
			boolean checkOutput = config.getBoolean("checkOutput");
			CSVDataProvider csvDP = new CSVDataProvider(fileName, checkOutput);
			dataProvider = csvDP;
			if (checkOutput){
				dataPrinter = csvDP;
			}
		}
		if (config.getString("dataProvider").toUpperCase().equals("SYMBOLIC")) {
			int steps = config.getInt("maxSteps");
			SymbolicDataProvider sDP = new SymbolicDataProvider(steps);
			dataProvider = sDP;
		}

		if (config.getString("looper").toUpperCase().equals("NONDETERMINISTIC")){
			looper = new NondeterministicLooper();
		}

		if (config.getBoolean("checkProperties")) {
			patterns = example.makeProperties(example.r1.VPC3);
		}

		IDataReader dataReader = new VPCReader(example.r1.VPC3, dataProvider, dataPrinter);
		if (config.getString("semantics").toUpperCase().equals("UML")) {
			example.sim = new UMLInterpreter(example.sm, dataReader, looper);
		}
		else if (config.getString("semantics").toUpperCase().equals("RHAPSODY")) {
			example.sim = new RhapsodyInterpreter(example.sm, dataReader, looper);
		}
		else {
			example.sim = new StateflowInterpreter(example.sm, dataReader, looper, patterns);
		}
		example.sim.getLooper().setInterpreter(example.sim);
		example.initializeTransitions();
		example.DoSim();
}
	public void DoSim() { 
		this.sim.initialize(); 
		this.sim.dataAndEventLoop();
	} 
	public List<Pattern> makeProperties(REGION_T.STATE_T s) { 
		ArrayList<Pattern> patterns = new ArrayList<Pattern>(); 
		return patterns; 
	}
	public class REGION_T extends Region { 
	public REGION_T(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p15 = new Pseudostate(this, Kind.INITIAL);
	public class STATE_T extends State {
	public int IS ;
public int v_mpk1 ;
public int LSright ;
public int LSleft ;
public int v_lin12 ;
public int v_let23 ;
public int v_let60 ;
public int v_sem5 ;
public int v_dep1 ;
public int v_lst ;
public boolean go ;
public int time ;
public int G1phase  = 0 ;
public int G2phase  = 2 ;
public int LS ;
public int Sphase  = 1 ;
public int cellcycle ;
public int counter ;
public int high  = 4 ;
public int ko  = 0 ;
public int let23 ;
public int lin12 ;
public int low  = 1 ;
public int lst ;
public int med  = 3 ;
public int mpk1 ;
public int off  = 0 ;
public int wt  = 1 ;
public int dep1 ;
public int low1  = 2 ;
public int gf  = 2 ;
public int rf  = 3 ;
public int sur2 ;
public int af  = 0 ;
public int primary  = 1 ;
public int secondary  = 2 ;
public int tertiary  = 3 ;
public int mixed  = 4 ;
public int fate ;
public int let60 ;
public int sem5 ;
	public void setData( int val_0,  int val_1,  int val_2,  int val_3,  int val_4,  int val_5,  int val_6,  int val_7,  int val_8,  int val_9,  boolean val_10,  int val_11 ) {
		this.IS = val_0;
		this.LSleft = val_1;
		this.LSright = val_2;
		this.v_lin12 = val_3;
		this.v_let23 = val_4;
		this.v_sem5 = val_5;
		this.v_let60 = val_6;
		this.v_mpk1 = val_7;
		this.v_dep1 = val_8;
		this.v_lst = val_9;
		this.go = val_10;
		this.time = val_11;
	}
		public STATE_T( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR88 extends Region { 
	public RegionR88(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p41 = new Pseudostate(this, Kind.INITIAL);
	public class StateLST75 extends State {
			public StateLST75( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR87 extends Region { 
	public RegionR87(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p3 = new Pseudostate(this, Kind.INITIAL);
	public class StateLstInit76 extends State {
			public StateLstInit76( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLstInit76 LstInit15 = new StateLstInit76("LstInit", this, false );
	public class StateLstOff77 extends State {
			public StateLstOff77( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lst = off;
;
		}
	}
	public StateLstOff77 LstOff16 = new StateLstOff77("LstOff", this, false );
	public class StateLstHigh78 extends State {
			public StateLstHigh78( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lst = high;
;
		}
	}
	public StateLstHigh78 LstHigh17 = new StateLstHigh78("LstHigh", this, false );
	public class StateLowMed79 extends State {
			public StateLowMed79( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR86 extends Region { 
	public RegionR86(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateLstLow80 extends State {
			public StateLstLow80( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lst = low;
;
		}
	}
	public StateLstLow80 LstLow19 = new StateLstLow80("LstLow", this, false );
	public class StateLstMed81 extends State {
			public StateLstMed81( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lst = med;
;
		}
	}
	public StateLstMed81 LstMed20 = new StateLstMed81("LstMed", this, false );
	public class Transition18 extends Transition { 
		public Transition18( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return lin12 == med && mpk1 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers19 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition18 p17 = new Transition18( LstLow19, LstMed20, this, triggers19, 1);
	public class Transition21 extends Transition { 
		public Transition21( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers22 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition21 p20 = new Transition21( LstMed20, LstLow19, this, triggers22, 1);
}
public RegionR86 r20 = new RegionR86( this, 0 );
	}
	public StateLowMed79 LowMed18 = new StateLowMed79("LowMed", this, false );
	public class Transition27 extends Transition { 
		public Transition27( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers28 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition27 p26 = new Transition27( p3, LstInit15, this, triggers28, 1);
	public class Transition30 extends Transition { 
		public Transition30( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_lst == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers31 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition30 p29 = new Transition30( LstInit15, LstOff16, this, triggers31, 1);
	public class Transition39 extends Transition { 
		public Transition39( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return lin12 == high && mpk1 != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers40 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition39 p38 = new Transition39( LowMed18, LstHigh17, this, triggers40, 1);
	public class Transition24 extends Transition { 
		public Transition24(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == high;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers25 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition24 p23 = new Transition24(this, triggers25, 1);
	public class Transition33 extends Transition { 
		public Transition33(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_lst == wt;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers34 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition33 p32 = new Transition33(this, triggers34, 2);
	public class Transition36 extends Transition { 
		public Transition36(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == high;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers37 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition36 p35 = new Transition36(this, triggers37, 2);
}
public RegionR87 r16 = new RegionR87( this, 0 );
	}
	public StateLST75 LST14 = new StateLST75("LST", this, false );
	Transition p42 = new Transition(p41, LST14, this, new Event(""));
}
public RegionR88 r15 = new RegionR88( this, 1 );
	public class RegionR91 extends Region { 
	public RegionR91(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p76 = new Pseudostate(this, Kind.INITIAL);
	public class StateLET2382 extends State {
			public StateLET2382( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR90 extends Region { 
	public RegionR90(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p1 = new Pseudostate(this, Kind.INITIAL);
	public class StateLet23Init83 extends State {
			public StateLet23Init83( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLet23Init83 Let23Init5 = new StateLet23Init83("Let23Init", this, false );
	public class StateLet23Off84 extends State {
			public StateLet23Off84( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLet23Off84 Let23Off6 = new StateLet23Off84("Let23Off", this, false );
	public class StateLet23LM85 extends State {
			public StateLet23LM85( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR89 extends Region { 
	public RegionR89(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateLet23Low86 extends State {
			public StateLet23Low86( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let23 = low;
;
		}
	}
	public StateLet23Low86 Let23Low8 = new StateLet23Low86("Let23Low", this, false );
	public class StateLet23Med87 extends State {
			public StateLet23Med87( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let23 = med;
;
		}
	}
	public StateLet23Med87 Let23Med9 = new StateLet23Med87("Let23Med", this, false );
	public class StateLet23Low188 extends State {
			public StateLet23Low188( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let23 = low1;
;
		}
	}
	public StateLet23Low188 Let23Low110 = new StateLet23Low188("Let23Low1", this, false );
	public class Transition44 extends Transition { 
		public Transition44( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers45 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition44 p43 = new Transition44( Let23Low8, Let23Med9, this, triggers45, 1);
	public class Transition47 extends Transition { 
		public Transition47( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == med && cellcycle != G1phase && dep1 != off && lst == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers48 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition47 p46 = new Transition47( Let23Med9, Let23Low8, this, triggers48, 1);
	public class Transition50 extends Transition { 
		public Transition50( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers51 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition50 p49 = new Transition50( Let23Low110, Let23Med9, this, triggers51, 1);
	public class Transition53 extends Transition { 
		public Transition53( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == low1;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers54 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition53 p52 = new Transition53( Let23Low8, Let23Low110, this, triggers54, 2);
	public class Transition56 extends Transition { 
		public Transition56( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == low1;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers57 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition56 p55 = new Transition56( Let23Med9, Let23Low110, this, triggers57, 2);
}
public RegionR89 r7 = new RegionR89( this, 0 );
	}
	public StateLet23LM85 Let23LM7 = new StateLet23LM85("Let23LM", this, false );
	public class StateLet23High89 extends State {
			public StateLet23High89( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let23 = high;
;
		}
	}
	public StateLet23High89 Let23High11 = new StateLet23High89("Let23High", this, false );
	public class Transition59 extends Transition { 
		public Transition59( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers60 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition59 p58 = new Transition59( p1, Let23Init5, this, triggers60, 1);
	public class Transition62 extends Transition { 
		public Transition62( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_let23 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			let23 = off;
;
		}
	}
	ArrayList<Event> triggers63 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition62 p61 = new Transition62( Let23Init5, Let23Off6, this, triggers63, 1);
	public class Transition74 extends Transition { 
		public Transition74( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return IS == high && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers75 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition74 p73 = new Transition74( Let23LM7, Let23High11, this, triggers75, 1);
	public class Transition65 extends Transition { 
		public Transition65(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_let23 == wt;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers66 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition65 p64 = new Transition65(this, triggers66, 2);
	public class Transition68 extends Transition { 
		public Transition68(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return IS == high && cellcycle != G1phase && dep1 == off && lst == high;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers69 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition68 p67 = new Transition68(this, triggers69, 1);
	public class Transition71 extends Transition { 
		public Transition71(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers72 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition71 p70 = new Transition71(this, triggers72, 2);
}
public RegionR90 r4 = new RegionR90( this, 0 );
	}
	public StateLET2382 LET234 = new StateLET2382("LET23", this, false );
	Transition p77 = new Transition(p76, LET234, this, new Event(""));
}
public RegionR91 r3 = new RegionR91( this, 2 );
	public class RegionR93 extends Region { 
	public RegionR93(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p93 = new Pseudostate(this, Kind.INITIAL);
	public class StateFATE90 extends State {
			public StateFATE90( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR92 extends Region { 
	public RegionR92(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p10 = new Pseudostate(this, Kind.INITIAL);
	public class StateAf91 extends State {
			public StateAf91( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateAf91 Af41 = new StateAf91("Af", this, false );
	public class StateSecondary92 extends State {
			public StateSecondary92( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateSecondary92 Secondary42 = new StateSecondary92("Secondary", this, false );
	public class StateTertiary93 extends State {
			public StateTertiary93( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateTertiary93 Tertiary43 = new StateTertiary93("Tertiary", this, false );
	public class StateMixed94 extends State {
			public StateMixed94( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateMixed94 Mixed44 = new StateMixed94("Mixed", this, false );
	public class StatePrimary95 extends State {
			public StatePrimary95( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StatePrimary95 Primary45 = new StatePrimary95("Primary", this, false );
	public class Transition79 extends Transition { 
		public Transition79( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			fate = af;
;
		}
	}
	ArrayList<Event> triggers80 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition79 p78 = new Transition79( p10, Af41, this, triggers80, 1);
	public class Transition82 extends Transition { 
		public Transition82( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle == Sphase && mpk1 == high && lin12 < high || counter == 4 && mpk1 == med && lin12 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			fate = primary;
;
		}
	}
	ArrayList<Event> triggers83 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition82 p81 = new Transition82( Af41, Primary45, this, triggers83, 1);
	public class Transition85 extends Transition { 
		public Transition85( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle == G2phase && lin12 == high && mpk1 != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			fate = secondary;
;
		}
	}
	ArrayList<Event> triggers86 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition85 p84 = new Transition85( Af41, Secondary42, this, triggers86, 2);
	public class Transition88 extends Transition { 
		public Transition88( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle == G2phase && lin12 < high && mpk1 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			fate = tertiary;
;
		}
	}
	ArrayList<Event> triggers89 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition88 p87 = new Transition88( Af41, Tertiary43, this, triggers89, 3);
	public class Transition91 extends Transition { 
		public Transition91( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle == G2phase && mpk1 == high && lin12 == high || mpk1 == med && lin12 == med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			fate = mixed;
;
		}
	}
	ArrayList<Event> triggers92 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition91 p90 = new Transition91( Af41, Mixed44, this, triggers92, 4);
}
public RegionR92 r47 = new RegionR92( this, 0 );
	}
	public StateFATE90 FATE40 = new StateFATE90("FATE", this, false );
	Transition p94 = new Transition(p93, FATE40, this, new Event(""));
}
public RegionR93 r46 = new RegionR93( this, 3 );
	public class RegionR95 extends Region { 
	public RegionR95(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p104 = new Pseudostate(this, Kind.INITIAL);
	public class StateCELLCYCLE96 extends State {
			public StateCELLCYCLE96( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR94 extends Region { 
	public RegionR94(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p4 = new Pseudostate(this, Kind.INITIAL);
	public class StateG197 extends State {
			public StateG197( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  cellcycle = G1phase;
;
		}
	}
	public StateG197 G122 = new StateG197("G1", this, false );
	public class StateS98 extends State {
			public StateS98( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  cellcycle = Sphase;
;
		}
	}
	public StateS98 S23 = new StateS98("S", this, false );
	public class StateG299 extends State {
			public StateG299( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  cellcycle = G2phase;
;
		}
	}
	public StateG299 G224 = new StateG299("G2", this, false );
	public class Transition96 extends Transition { 
		public Transition96( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers97 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition96 p95 = new Transition96( p4, G122, this, triggers97, 1);
	public class Transition99 extends Transition { 
		public Transition99( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return time == 15;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers100 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition99 p98 = new Transition99( G122, S23, this, triggers100, 1);
	public class Transition102 extends Transition { 
		public Transition102( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return counter > 10;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers103 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition102 p101 = new Transition102( S23, G224, this, triggers103, 1);
}
public RegionR94 r24 = new RegionR94( this, 0 );
	}
	public StateCELLCYCLE96 CELLCYCLE21 = new StateCELLCYCLE96("CELLCYCLE", this, false );
	Transition p105 = new Transition(p104, CELLCYCLE21, this, new Event(""));
}
public RegionR95 r23 = new RegionR95( this, 4 );
	public class RegionR97 extends Region { 
	public RegionR97(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p112 = new Pseudostate(this, Kind.INITIAL);
	public class StateCOUNTER100 extends State {
			public StateCOUNTER100( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR96 extends Region { 
	public RegionR96(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p2 = new Pseudostate(this, Kind.INITIAL);
	public class StateCounterSt101 extends State {
			public StateCounterSt101( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateCounterSt101 CounterSt13 = new StateCounterSt101("CounterSt", this, false );
	public class Transition107 extends Transition { 
		public Transition107( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			counter = (int)( 0 );
;
		}
	}
	ArrayList<Event> triggers108 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition107 p106 = new Transition107( p2, CounterSt13, this, triggers108, 1);
	public class Transition110 extends Transition { 
		public Transition110( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle == Sphase && counter < 11;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			++counter;
;
		}
	}
	ArrayList<Event> triggers111 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition110 p109 = new Transition110( CounterSt13, CounterSt13, this, triggers111, 1);
}
public RegionR96 r13 = new RegionR96( this, 0 );
	}
	public StateCOUNTER100 COUNTER12 = new StateCOUNTER100("COUNTER", this, false );
	Transition p113 = new Transition(p112, COUNTER12, this, new Event(""));
}
public RegionR97 r12 = new RegionR97( this, 5 );
	public class RegionR100 extends Region { 
	public RegionR100(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p135 = new Pseudostate(this, Kind.INITIAL);
	public class StateLS102 extends State {
			public StateLS102( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR99 extends Region { 
	public RegionR99(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p5 = new Pseudostate(this, Kind.INITIAL);
	public class StateLSMed103 extends State {
			public StateLSMed103( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  LS = med;
;
		}
	}
	public StateLSMed103 LSMed26 = new StateLSMed103("LSMed", this, false );
	public class StateLSLowHigh104 extends State {
			public StateLSLowHigh104( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR98 extends Region { 
	public RegionR98(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p6 = new Pseudostate(this, Kind.INITIAL);
	public class StateLSLow105 extends State {
			public StateLSLow105( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  LS = low;
;
		}
	}
	public StateLSLow105 LSLow28 = new StateLSLow105("LSLow", this, false );
	public class StateLSHigh106 extends State {
			public StateLSHigh106( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  LS = high;
;
		}
	}
	public StateLSHigh106 LSHigh29 = new StateLSHigh106("LSHigh", this, false );
	public class Transition115 extends Transition { 
		public Transition115( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers116 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition115 p114 = new Transition115( LSLow28, LSHigh29, this, triggers116, 1);
	public class Transition118 extends Transition { 
		public Transition118( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == low;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers119 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition118 p117 = new Transition118( LSHigh29, LSLow28, this, triggers119, 1);
	public class Transition121 extends Transition { 
		public Transition121( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers122 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition121 p120 = new Transition121( p6, LSLow28, this, triggers122, 1);
}
public RegionR98 r31 = new RegionR98( this, 0 );
	}
	public StateLSLowHigh104 LSLowHigh27 = new StateLSLowHigh104("LSLowHigh", this, false );
	public class Transition124 extends Transition { 
		public Transition124( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers125 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition124 p123 = new Transition124( LSLowHigh27, LSMed26, this, triggers125, 1);
	public class Transition133 extends Transition { 
		public Transition133( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers134 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition133 p132 = new Transition133( p5, LSLowHigh27, this, triggers134, 1);
	public class Transition127 extends Transition { 
		public Transition127(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers128 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition127 p126 = new Transition127(this, triggers128, 1);
	public class Transition130 extends Transition { 
		public Transition130(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == high;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers131 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition130 p129 = new Transition130(this, triggers131, 2);
}
public RegionR99 r29 = new RegionR99( this, 0 );
	}
	public StateLS102 LS25 = new StateLS102("LS", this, false );
	Transition p136 = new Transition(p135, LS25, this, new Event(""));
}
public RegionR100 r28 = new RegionR100( this, 6 );
	public class RegionR103 extends Region { 
	public RegionR103(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p155 = new Pseudostate(this, Kind.INITIAL);
	public class StateSUR2107 extends State {
			public StateSUR2107( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR102 extends Region { 
	public RegionR102(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p7 = new Pseudostate(this, Kind.INITIAL);
	public class StateSur2Med108 extends State {
			public StateSur2Med108( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sur2 = med;
;
		}
	}
	public StateSur2Med108 Sur2Med31 = new StateSur2Med108("Sur2Med", this, false );
	public class StateLH109 extends State {
			public StateLH109( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR101 extends Region { 
	public RegionR101(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p8 = new Pseudostate(this, Kind.INITIAL);
	public class StateSur2Low110 extends State {
			public StateSur2Low110( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sur2 = low;
;
		}
	}
	public StateSur2Low110 Sur2Low33 = new StateSur2Low110("Sur2Low", this, false );
	public class StateSur2High111 extends State {
			public StateSur2High111( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sur2 = high;
;
		}
	}
	public StateSur2High111 Sur2High34 = new StateSur2High111("Sur2High", this, false );
	public class Transition138 extends Transition { 
		public Transition138( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers139 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition138 p137 = new Transition138( Sur2Low33, Sur2High34, this, triggers139, 1);
	public class Transition141 extends Transition { 
		public Transition141( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return mpk1 == low;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers142 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition141 p140 = new Transition141( Sur2High34, Sur2Low33, this, triggers142, 1);
	public class Transition144 extends Transition { 
		public Transition144( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers145 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition144 p143 = new Transition144( p8, Sur2Low33, this, triggers145, 1);
}
public RegionR101 r37 = new RegionR101( this, 0 );
	}
	public StateLH109 LH32 = new StateLH109("LH", this, false );
	public class Transition147 extends Transition { 
		public Transition147( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers148 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition147 p146 = new Transition147( p7, LH32, this, triggers148, 1);
	public class Transition150 extends Transition { 
		public Transition150(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers151 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition150 p149 = new Transition150(this, triggers151, 1);
	public class Transition153 extends Transition { 
		public Transition153(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return mpk1 == high;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers154 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition153 p152 = new Transition153(this, triggers154, 2);
}
public RegionR102 r35 = new RegionR102( this, 0 );
	}
	public StateSUR2107 SUR230 = new StateSUR2107("SUR2", this, false );
	Transition p156 = new Transition(p155, SUR230, this, new Event(""));
}
public RegionR103 r34 = new RegionR103( this, 7 );
	public class RegionR105 extends Region { 
	public RegionR105(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p172 = new Pseudostate(this, Kind.INITIAL);
	public class StateDEP1112 extends State {
			public StateDEP1112( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR104 extends Region { 
	public RegionR104(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p9 = new Pseudostate(this, Kind.INITIAL);
	public class StateDep1Init113 extends State {
			public StateDep1Init113( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateDep1Init113 Dep1Init36 = new StateDep1Init113("Dep1Init", this, false );
	public class StateDep1Off114 extends State {
			public StateDep1Off114( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateDep1Off114 Dep1Off37 = new StateDep1Off114("Dep1Off", this, false );
	public class StateDep1Low115 extends State {
			public StateDep1Low115( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  dep1 = low;
;
		}
	}
	public StateDep1Low115 Dep1Low38 = new StateDep1Low115("Dep1Low", this, false );
	public class StateDep1Med116 extends State {
			public StateDep1Med116( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  dep1 = med;
;
		}
	}
	public StateDep1Med116 Dep1Med39 = new StateDep1Med116("Dep1Med", this, false );
	public class Transition158 extends Transition { 
		public Transition158( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_dep1 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			dep1 = off;
;
		}
	}
	ArrayList<Event> triggers159 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition158 p157 = new Transition158( Dep1Init36, Dep1Off37, this, triggers159, 1);
	public class Transition161 extends Transition { 
		public Transition161( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_dep1 == wt;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers162 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition161 p160 = new Transition161( Dep1Init36, Dep1Low38, this, triggers162, 2);
	public class Transition164 extends Transition { 
		public Transition164( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers165 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition164 p163 = new Transition164( p9, Dep1Init36, this, triggers165, 1);
	public class Transition167 extends Transition { 
		public Transition167( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return sur2 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers168 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition167 p166 = new Transition167( Dep1Low38, Dep1Med39, this, triggers168, 1);
	public class Transition170 extends Transition { 
		public Transition170( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return sur2 > low;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers171 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition170 p169 = new Transition170( Dep1Med39, Dep1Low38, this, triggers171, 1);
}
public RegionR104 r41 = new RegionR104( this, 0 );
	}
	public StateDEP1112 DEP135 = new StateDEP1112("DEP1", this, false );
	Transition p173 = new Transition(p172, DEP135, this, new Event(""));
}
public RegionR105 r40 = new RegionR105( this, 8 );
	public class RegionR108 extends Region { 
	public RegionR108(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p198 = new Pseudostate(this, Kind.INITIAL);
	public class StateLIN12117 extends State {
			public StateLIN12117( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR107 extends Region { 
	public RegionR107(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p11 = new Pseudostate(this, Kind.INITIAL);
	public class StateLin12Init118 extends State {
			public StateLin12Init118( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLin12Init118 Lin12Init47 = new StateLin12Init118("Lin12Init", this, false );
	public class StateLin12Off119 extends State {
			public StateLin12Off119( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLin12Off119 Lin12Off48 = new StateLin12Off119("Lin12Off", this, false );
	public class StateLin12High120 extends State {
			public StateLin12High120( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lin12 = high;
;
		}
	}
	public StateLin12High120 Lin12High49 = new StateLin12High120("Lin12High", this, false );
	public class StateLin12LowMed121 extends State {
			public StateLin12LowMed121( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR106 extends Region { 
	public RegionR106(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateLin12Low122 extends State {
			public StateLin12Low122( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lin12 = low;
;
		}
	}
	public StateLin12Low122 Lin12Low51 = new StateLin12Low122("Lin12Low", this, false );
	public class StateLin12Med123 extends State {
			public StateLin12Med123( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  lin12 = med;
;
		}
	}
	public StateLin12Med123 Lin12Med52 = new StateLin12Med123("Lin12Med", this, false );
	public class Transition175 extends Transition { 
		public Transition175( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return LSleft == med || LSright == med && cellcycle == G1phase || cellcycle != G1phase && counter >= 1 && sur2 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers176 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition175 p174 = new Transition175( Lin12Low51, Lin12Med52, this, triggers176, 1);
	public class Transition178 extends Transition { 
		public Transition178( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return cellcycle != G1phase && counter >= 1 && sur2 > low;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers179 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition178 p177 = new Transition178( Lin12Med52, Lin12Low51, this, triggers179, 1);
}
public RegionR106 r58 = new RegionR106( this, 0 );
	}
	public StateLin12LowMed121 Lin12LowMed50 = new StateLin12LowMed121("Lin12LowMed", this, false );
	public class Transition181 extends Transition { 
		public Transition181( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers182 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition181 p180 = new Transition181( p11, Lin12Init47, this, triggers182, 1);
	public class Transition184 extends Transition { 
		public Transition184( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_lin12 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			lin12 = off;
;
		}
	}
	ArrayList<Event> triggers185 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition184 p183 = new Transition184( Lin12Init47, Lin12Off48, this, triggers185, 1);
	public class Transition187 extends Transition { 
		public Transition187( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_lin12 == gf;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers188 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition187 p186 = new Transition187( Lin12Init47, Lin12High49, this, triggers188, 2);
	public class Transition196 extends Transition { 
		public Transition196( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return LSleft == high || LSright == high && cellcycle == G1phase || cellcycle != G1phase && counter >= 1 && sur2 < med;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers197 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition196 p195 = new Transition196( Lin12LowMed50, Lin12High49, this, triggers197, 1);
	public class Transition190 extends Transition { 
		public Transition190(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_lin12 == wt;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers191 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition190 p189 = new Transition190(this, triggers191, 3);
	public class Transition193 extends Transition { 
		public Transition193(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return cellcycle == G1phase && counter >= 1 && sur2 > low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers194 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition193 p192 = new Transition193(this, triggers194, 1);
}
public RegionR107 r54 = new RegionR107( this, 0 );
	}
	public StateLIN12117 LIN1246 = new StateLIN12117("LIN12", this, false );
	Transition p199 = new Transition(p198, LIN1246, this, new Event(""));
}
public RegionR108 r53 = new RegionR108( this, 9 );
	public class RegionR111 extends Region { 
	public RegionR111(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p233 = new Pseudostate(this, Kind.INITIAL);
	public class StateSEM5124 extends State {
			public StateSEM5124( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR110 extends Region { 
	public RegionR110(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p12 = new Pseudostate(this, Kind.INITIAL);
	public class StateSem5Off125 extends State {
			public StateSem5Off125( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateSem5Off125 Sem5Off54 = new StateSem5Off125("Sem5Off", this, false );
	public class StateSem5Init126 extends State {
			public StateSem5Init126( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateSem5Init126 Sem5Init55 = new StateSem5Init126("Sem5Init", this, false );
	public class StateSem5High127 extends State {
			public StateSem5High127( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sem5 = high;
;
		}
	}
	public StateSem5High127 Sem5High56 = new StateSem5High127("Sem5High", this, false );
	public class StateSem5LowLowMed128 extends State {
			public StateSem5LowLowMed128( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR109 extends Region { 
	public RegionR109(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateSem5Low129 extends State {
			public StateSem5Low129( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sem5 = low;
;
		}
	}
	public StateSem5Low129 Sem5Low58 = new StateSem5Low129("Sem5Low", this, false );
	public class StateSem5Med130 extends State {
			public StateSem5Med130( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sem5 = med;
;
		}
	}
	public StateSem5Med130 Sem5Med59 = new StateSem5Med130("Sem5Med", this, false );
	public class StateSem5Low1131 extends State {
			public StateSem5Low1131( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  sem5 = low1;
;
		}
	}
	public StateSem5Low1131 Sem5Low160 = new StateSem5Low1131("Sem5Low1", this, false );
	public class Transition201 extends Transition { 
		public Transition201( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let23 == low1;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers202 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition201 p200 = new Transition201( Sem5Med59, Sem5Low160, this, triggers202, 1);
	public class Transition204 extends Transition { 
		public Transition204( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let23 == low1;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers205 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition204 p203 = new Transition204( Sem5Low58, Sem5Low160, this, triggers205, 1);
	public class Transition207 extends Transition { 
		public Transition207( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_sem5 == rf && cellcycle == G1phase && let23 == high || cellcycle != G1phase && let23 == high && lst != high || let23 == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers208 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition207 p206 = new Transition207( Sem5Low160, Sem5Med59, this, triggers208, 1);
	public class Transition210 extends Transition { 
		public Transition210( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_sem5 == rf && cellcycle == G1phase && let23 == high || cellcycle != G1phase && let23 == high && lst != high || let23 == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers211 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition210 p209 = new Transition210( Sem5Low58, Sem5Med59, this, triggers211, 2);
	public class Transition213 extends Transition { 
		public Transition213( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let23 < med || cellcycle != G1phase && let23 != high && lst == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers214 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition213 p212 = new Transition213( Sem5Med59, Sem5Low58, this, triggers214, 2);
}
public RegionR109 r66 = new RegionR109( this, 0 );
	}
	public StateSem5LowLowMed128 Sem5LowLowMed57 = new StateSem5LowLowMed128("Sem5LowLowMed", this, false );
	public class Transition216 extends Transition { 
		public Transition216( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers217 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition216 p215 = new Transition216( p12, Sem5Init55, this, triggers217, 1);
	public class Transition219 extends Transition { 
		public Transition219( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_sem5 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			sem5 = off;
;
		}
	}
	ArrayList<Event> triggers220 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition219 p218 = new Transition219( Sem5Init55, Sem5Off54, this, triggers220, 1);
	public class Transition231 extends Transition { 
		public Transition231( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_sem5 != rf && let23 == high && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers232 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition231 p230 = new Transition231( Sem5LowLowMed57, Sem5High56, this, triggers232, 1);
	public class Transition222 extends Transition { 
		public Transition222(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers223 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition222 p221 = new Transition222(this, triggers223, 2);
	public class Transition225 extends Transition { 
		public Transition225(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_sem5 != rf && cellcycle != G1phase && let23 != high && lst > low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers226 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition225 p224 = new Transition225(this, triggers226, 1);
	public class Transition228 extends Transition { 
		public Transition228(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return let23 == low1;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers229 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition228 p227 = new Transition228(this, triggers229, 2);
}
public RegionR110 r62 = new RegionR110( this, 0 );
	}
	public StateSEM5124 SEM553 = new StateSEM5124("SEM5", this, false );
	Transition p234 = new Transition(p233, SEM553, this, new Event(""));
}
public RegionR111 r61 = new RegionR111( this, 10 );
	public class RegionR114 extends Region { 
	public RegionR114(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p256 = new Pseudostate(this, Kind.INITIAL);
	public class StateMPK1132 extends State {
			public StateMPK1132( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR113 extends Region { 
	public RegionR113(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p13 = new Pseudostate(this, Kind.INITIAL);
	public class StateMpk1LowMed133 extends State {
			public StateMpk1LowMed133( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR112 extends Region { 
	public RegionR112(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateMpk1Low134 extends State {
			public StateMpk1Low134( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  mpk1 = low;
;
		}
	}
	public StateMpk1Low134 Mpk1Low63 = new StateMpk1Low134("Mpk1Low", this, false );
	public class StateMpk1Med135 extends State {
			public StateMpk1Med135( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  mpk1 = med;
;
		}
	}
	public StateMpk1Med135 Mpk1Med64 = new StateMpk1Med135("Mpk1Med", this, false );
	public class Transition236 extends Transition { 
		public Transition236( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let60 < med || cellcycle != G1phase && let60 != high && lst > high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers237 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition236 p235 = new Transition236( Mpk1Med64, Mpk1Low63, this, triggers237, 1);
	public class Transition239 extends Transition { 
		public Transition239( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let60 == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers240 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition239 p238 = new Transition239( Mpk1Low63, Mpk1Med64, this, triggers240, 1);
}
public RegionR112 r72 = new RegionR112( this, 0 );
	}
	public StateMpk1LowMed133 Mpk1LowMed62 = new StateMpk1LowMed133("Mpk1LowMed", this, false );
	public class StateMpk1Init136 extends State {
			public StateMpk1Init136( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateMpk1Init136 Mpk1Init65 = new StateMpk1Init136("Mpk1Init", this, false );
	public class StateMpk1Off137 extends State {
			public StateMpk1Off137( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateMpk1Off137 Mpk1Off66 = new StateMpk1Off137("Mpk1Off", this, false );
	public class StateMpk1High138 extends State {
			public StateMpk1High138( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  mpk1 = high;
;
		}
	}
	public StateMpk1High138 Mpk1High67 = new StateMpk1High138("Mpk1High", this, false );
	public class Transition242 extends Transition { 
		public Transition242( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers243 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition242 p241 = new Transition242( p13, Mpk1Init65, this, triggers243, 1);
	public class Transition245 extends Transition { 
		public Transition245( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_mpk1 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			mpk1 = off;
;
		}
	}
	ArrayList<Event> triggers246 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition245 p244 = new Transition245( Mpk1Init65, Mpk1Off66, this, triggers246, 1);
	public class Transition254 extends Transition { 
		public Transition254( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return let60 == med && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers255 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition254 p253 = new Transition254( Mpk1LowMed62, Mpk1High67, this, triggers255, 1);
	public class Transition248 extends Transition { 
		public Transition248(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_mpk1 == wt;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers249 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition248 p247 = new Transition248(this, triggers249, 2);
	public class Transition251 extends Transition { 
		public Transition251(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return let60 != high && cellcycle != G1phase && lst > low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers252 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition251 p250 = new Transition251(this, triggers252, 1);
}
public RegionR113 r71 = new RegionR113( this, 0 );
	}
	public StateMPK1132 MPK161 = new StateMPK1132("MPK1", this, false );
	Transition p257 = new Transition(p256, MPK161, this, new Event(""));
}
public RegionR114 r70 = new RegionR114( this, 11 );
	public class RegionR117 extends Region { 
	public RegionR117(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p282 = new Pseudostate(this, Kind.INITIAL);
	public class StateLET60139 extends State {
			public StateLET60139( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR116 extends Region { 
	public RegionR116(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public Pseudostate p14 = new Pseudostate(this, Kind.INITIAL);
	public class StateLet60LowMed140 extends State {
			public StateLet60LowMed140( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	public class RegionR115 extends Region { 
	public RegionR115(IRegionParent parent, int order) { 
		super(parent, order); 
	} 
	public class StateLet60Low141 extends State {
			public StateLet60Low141( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let60 = low;
;
		}
	}
	public StateLet60Low141 Let60Low70 = new StateLet60Low141("Let60Low", this, false );
	public class StateLet60Med142 extends State {
			public StateLet60Med142( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let60 = med;
;
		}
	}
	public StateLet60Med142 Let60Med71 = new StateLet60Med142("Let60Med", this, false );
	public class Transition259 extends Transition { 
		public Transition259( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return sem5 == med || sem5 == low1 && v_let60 == gf && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers260 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition259 p258 = new Transition259( Let60Low70, Let60Med71, this, triggers260, 1);
	public class Transition262 extends Transition { 
		public Transition262( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return sem5 < med || v_let60 != gf && sem5 == low1 || cellcycle != G1phase && sem5 != high && lst == high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers263 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition262 p261 = new Transition262( Let60Med71, Let60Low70, this, triggers263, 1);
}
public RegionR115 r80 = new RegionR115( this, 0 );
	}
	public StateLet60LowMed140 Let60LowMed69 = new StateLet60LowMed140("Let60LowMed", this, false );
	public class StateLet60Init143 extends State {
			public StateLet60Init143( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLet60Init143 Let60Init72 = new StateLet60Init143("Let60Init", this, false );
	public class StateLet60Off144 extends State {
			public StateLet60Off144( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
	}
	public StateLet60Off144 Let60Off73 = new StateLet60Off144("Let60Off", this, false );
	public class StateLet60High145 extends State {
			public StateLet60High145( String name, Region parent, boolean isFinal ) { 
			super( name, parent, isFinal ); 
		} 
		public void entryAction() {
		  let60 = high;
;
		}
	}
	public StateLet60High145 Let60High74 = new StateLet60High145("Let60High", this, false );
	public class Transition265 extends Transition { 
		public Transition265( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return sem5 == high && cellcycle == G1phase || cellcycle != G1phase && lst != high;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers266 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition265 p264 = new Transition265( Let60LowMed69, Let60High74, this, triggers266, 1);
	public class Transition268 extends Transition { 
		public Transition268( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			;
		}
	}
	ArrayList<Event> triggers269 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition268 p267 = new Transition268( p14, Let60Init72, this, triggers269, 1);
	public class Transition271 extends Transition { 
		public Transition271( IVertex source, IVertex target, Region parent, List<Event> triggers, int priority ) {
			super( source, target, parent, triggers, priority);
		}
		public boolean guard(IEventHolder holder) {
			return v_let60 == ko;
		}
		public void action(IEventHolder holder) {
			;
		}
		public void conditionAction(IEventHolder holder) {
			let60 = off;
;
		}
	}
	ArrayList<Event> triggers272 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition271 p270 = new Transition271( Let60Init72, Let60Off73, this, triggers272, 1);
	public class Transition274 extends Transition { 
		public Transition274(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_let60 == wt;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers275 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition274 p273 = new Transition274(this, triggers275, 2);
	public class Transition277 extends Transition { 
		public Transition277(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return sem5 != high && cellcycle != G1phase && lst > low;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers278 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition277 p276 = new Transition277(this, triggers278, 1);
	public class Transition280 extends Transition { 
		public Transition280(Region parent, List<Event> triggers, int priority) {
			super(parent, triggers, priority);
		}
		public boolean guard() {
			return v_let60 == gf;
		}
		public void action( IEventHolder e ) {
			;
		}
		public void conditionAction(IEventHolder e) {
			;
		}
	}
	ArrayList<Event> triggers281 = new ArrayList<Event>() { {
		add(new Event(""));
	} };
	Transition280 p279 = new Transition280(this, triggers281, 3);
}
public RegionR116 r79 = new RegionR116( this, 0 );
	}
	public StateLET60139 LET6068 = new StateLET60139("LET60", this, false );
	Transition p283 = new Transition(p282, LET6068, this, new Event(""));
}
public RegionR117 r78 = new RegionR117( this, 12 );
	}
	public STATE_T VPC3 = new STATE_T("VPC", this, false );
	Transition p16 = new Transition(p15, VPC3, this, new Event(""));
}
public REGION_T r1 = new REGION_T( sm, 0 );
	public void initializeTransitions() {
		r1.VPC3.r15.LST14.r16.p23.initialize(r1.VPC3.r15.LST14.r16.LstHigh17,r1.VPC3.r15.LST14.r16.LowMed18.r20.LstMed20);
		r1.VPC3.r15.LST14.r16.p32.initialize(r1.VPC3.r15.LST14.r16.LstInit15,r1.VPC3.r15.LST14.r16.LowMed18.r20.LstLow19);
		r1.VPC3.r15.LST14.r16.p35.initialize(r1.VPC3.r15.LST14.r16.LstHigh17,r1.VPC3.r15.LST14.r16.LowMed18.r20.LstLow19);
		r1.VPC3.r28.LS25.r29.p126.initialize(r1.VPC3.r28.LS25.r29.LSMed26,r1.VPC3.r28.LS25.r29.LSLowHigh27.r31.LSLow28);
		r1.VPC3.r28.LS25.r29.p129.initialize(r1.VPC3.r28.LS25.r29.LSMed26,r1.VPC3.r28.LS25.r29.LSLowHigh27.r31.LSHigh29);
		r1.VPC3.r3.LET234.r4.p64.initialize(r1.VPC3.r3.LET234.r4.Let23Init5,r1.VPC3.r3.LET234.r4.Let23LM7.r7.Let23Low8);
		r1.VPC3.r3.LET234.r4.p67.initialize(r1.VPC3.r3.LET234.r4.Let23High11,r1.VPC3.r3.LET234.r4.Let23LM7.r7.Let23Med9);
		r1.VPC3.r3.LET234.r4.p70.initialize(r1.VPC3.r3.LET234.r4.Let23High11,r1.VPC3.r3.LET234.r4.Let23LM7.r7.Let23Low110);
		r1.VPC3.r34.SUR230.r35.p149.initialize(r1.VPC3.r34.SUR230.r35.Sur2Med31,r1.VPC3.r34.SUR230.r35.LH32.r37.Sur2Low33);
		r1.VPC3.r34.SUR230.r35.p152.initialize(r1.VPC3.r34.SUR230.r35.Sur2Med31,r1.VPC3.r34.SUR230.r35.LH32.r37.Sur2High34);
		r1.VPC3.r53.LIN1246.r54.p189.initialize(r1.VPC3.r53.LIN1246.r54.Lin12Init47,r1.VPC3.r53.LIN1246.r54.Lin12LowMed50.r58.Lin12Low51);
		r1.VPC3.r53.LIN1246.r54.p192.initialize(r1.VPC3.r53.LIN1246.r54.Lin12High49,r1.VPC3.r53.LIN1246.r54.Lin12LowMed50.r58.Lin12Med52);
		r1.VPC3.r61.SEM553.r62.p221.initialize(r1.VPC3.r61.SEM553.r62.Sem5Init55,r1.VPC3.r61.SEM553.r62.Sem5LowLowMed57.r66.Sem5Low58);
		r1.VPC3.r61.SEM553.r62.p224.initialize(r1.VPC3.r61.SEM553.r62.Sem5High56,r1.VPC3.r61.SEM553.r62.Sem5LowLowMed57.r66.Sem5Med59);
		r1.VPC3.r61.SEM553.r62.p227.initialize(r1.VPC3.r61.SEM553.r62.Sem5High56,r1.VPC3.r61.SEM553.r62.Sem5LowLowMed57.r66.Sem5Low160);
		r1.VPC3.r70.MPK161.r71.p247.initialize(r1.VPC3.r70.MPK161.r71.Mpk1Init65,r1.VPC3.r70.MPK161.r71.Mpk1LowMed62.r72.Mpk1Low63);
		r1.VPC3.r70.MPK161.r71.p250.initialize(r1.VPC3.r70.MPK161.r71.Mpk1High67,r1.VPC3.r70.MPK161.r71.Mpk1LowMed62.r72.Mpk1Med64);
		r1.VPC3.r78.LET6068.r79.p273.initialize(r1.VPC3.r78.LET6068.r79.Let60Init72,r1.VPC3.r78.LET6068.r79.Let60LowMed69.r80.Let60Low70);
		r1.VPC3.r78.LET6068.r79.p276.initialize(r1.VPC3.r78.LET6068.r79.Let60High74,r1.VPC3.r78.LET6068.r79.Let60LowMed69.r80.Let60Med71);
		r1.VPC3.r78.LET6068.r79.p279.initialize(r1.VPC3.r78.LET6068.r79.Let60Init72,r1.VPC3.r78.LET6068.r79.Let60LowMed69.r80.Let60Med71);
	}
}
